<?php

declare(strict_types=1);

namespace DreamCat\ObjectValid\Utils;

use Reflector;

/**
 * 反射的杂项函数
 * @author vijay
 */
class ReflectionUtils
{
    /**
     * 获取反射的文字描述
     * @param Reflector $reflector 反射
     * @return string 描述
     */
    public static function getReflectDesc(Reflector $reflector): string
    {
        if (isset($reflector->name)) {
            $name = $reflector->name;
        } elseif (method_exists($reflector, "getName")) {
            $name = $reflector->getName();
        } else {
            $name = strval($reflector);
        }
        if (isset($reflector->class)) {
            $name = "{$reflector->class}::{$name}";
        }
        return $name;
    }
}

# end of file
